1. Field of Invention
The present invention relates generally to the storage of data in a cellular switch, and more particularly to a software utility program and method for creating a new operative system generic tape by modifying a damaged system generic tape or updating a previously created backup system generic tape.
2. Description of Prior Arrangements
One of the principal components of a cellular telephone system is a cellular switch. A cellular switch that is associated with a cellular system contains a considerable amount of data which is used in the operation of the system. This data typically includes lists of cellular subscribers associated with the switch, mobile telephone numbers, electronic security numbers, cellular subscriber locations, and cellular subscriber service options. If the integrity of the data stored in a cellular switch is not adequately maintained, the cellular subscribers associated with the switch can experience a number of problems. For example, the subscribers might experience restrictive changes in their cellular service, or total interruption of service. In addition, loss of data from a cellular switch could affect the cellular service provider by permitting the switch to provide service to unauthorized cellular telephones. Consequently, proper maintenance and storage of the data of a cellular switch is integral to the efficient, uninterrupted operation of the cellular system.
One means that is used to store data in a cellular switch involves semiconductor-based random access memory. A cellular switch generally uses random access memory to store data related to the service, features, status, and other characteristics for the cellular subscribers receiving service from that particular switch. These subscribers are referred to as "local" subscribers of the switch.
The random access memory of a switch is usually divided into a number of memory banks, with each bank comprising one or more computer cards and each card containing a number of random access memory integrated circuit chips. As an example, Motorola Inc. supplies a 4 megabyte random access memory card, model number SLN4166a, for use with Motorola brand cellular switches.
In addition to the random access memory, a cellular switch usually has one or more magnetic tape drives, such as the Cipher series 100 tape drive, which is supplied by Motorola under model number SLN5258a. The magnetic tape drives function with magnetic tapes having a width of 0.5 inches and a storage capability of 1600 bits per inch. The magnetic tape drives are a means for interfacing with or backing up the random access memory.
One of the databases used by a typical switch and stored in the random access memory is the subscriber database. The subscriber database contains basic information relating to the subscribers that are local to the switch. For explanatory purposes, this information may be categorized in terms of dynamic data and static data.
The dynamic data comprises information contained in the subscriber database that is subject to frequent modification. For example, the cellular subscribers that are local to a particular switch are provided with set of optional features related to their cellular service. These features are selectively enabled and disabled at the option of the cellular subscribers. The features that have been selected are called active features, and these features constitute a particular database called the active features database. The active features database is an example of the dynamic data of a cellular switch, and is stored in the switch's random access memory as part of the subscriber database.
Static data, on the other hand, consists of subscriber database information that is not subject to frequent modification, such as electronic serial numbers, mobile telephone numbers, and originating class of service.
The static data is stored in the random access memory of the switch and is additionally stored on a particular magnetic tape called the system generic tape. The system generic tape is updated by the switch in accordance with each change that occurs to the static data of the subscriber database stored in the random access memory. Therefore, the system generic tape provides a redundant copy of the static data of the subscriber database stored in the random access memory. Accordingly, when the static data of the subscriber database stored in random access memory changes due to an event, such as the activation of a new cellular subscriber that is local to the switch, the system generic tape is updated. At present, the operational system generic tape of a typical cellular switch is duplicated on a weekly basis by personnel who operate the switch, and the copy of the tape is placed in storage for backup purposes.
In contrast to the storage of the static data, the dynamic data is not stored on the system generic tape due to the frequent modifications that are performed on the dynamic data. Therefore, the dynamic data is stored exclusively in the switch's random access memory. For many purposes, this technique has been satisfactory.
However, there are a number of circumstances under which the data of a cellular switch can be lost. For example, the system generic tape is sometimes damaged or destroyed, thereby causing the static data of the subscriber database stored on the tape to be unusable. In order to recover from such a loss, the current procedure utilizes the most recently created backup system generic tape. Specifically, the defective system generic tape is removed from the magnetic drive to which the tape is attached, and the most recently created backup system generic tape is attached to the magnetic tape in replacement for the defective tape.
However, the most recently created backup tape may have been created as much as one week prior to its use in such a recovery procedure, since switch operators typically make new backup tapes on a weekly basis, as described hereinabove. Therefore, even after the replacement of the damaged system generic tape with the backup tape, the switch may not be able to operate properly since the subscriber database stored on the backup tape may be outdated with respect to the current, operative subscriber database contained in random access memory.
One method currently used in cellular operation to solve this problem involves the performance of a substantial number of manual tasks. In particular, an operator first uses a computer terminal, either located at the switch or at a remote location, to manually transmit switch-compatible print commands to the switch, in order to print the contents of the operative subscriber database contained in the switch's memory. Then, the operator manually removes the defective system generic tape from the magnetic tape drive to which it is attached and manually substitutes the backup system generic tape. Subsequently, the operator manually issues one or more software commands to the switch in order to cause the subscriber database of the backup tape to be loaded into the switch's memory. Then, the operator manually issues one or more switch-compatible print commands to the switch to cause the printing of the subscriber database that was loaded into the memory from the backup tape.
After the two subscriber databases have been printed as previously described, the operator manually compares the databases, subscriber by subscriber, in order to identify the subscribers for which the information of the databases differs.
Finally, in order to modify the subscriber database of the backup tape to match the subscriber database first printed from the memory, the operator manually issues a number of cellular switch-compatible software commands to the cellular switch. In particular, the operator issues one or more software commands to the switch for each cellular subscriber that was identified during the manual comparison process. These software commands function to change the subscriber database stored in the memory of the switch to match the operative contents of the subscriber database which was originally printed when the defect was first detected. In response to the modifications performed on the subscriber database of the memory, the subscriber database of the backup system generic tape is modified to properly duplicate the subscriber database stored in the memory.
Thus, by the use of a substantial number of manual tasks, a system generic tape having an operative subscriber database is created by updating the subscriber database of the backup system generic tape.
There are a number of limitations associated with this cumbersome method of recovery. First, manually comparing the subscriber databases of the switch's memory and the backup system generic tape is a time consuming process since a typical cellular switch is able to store data corresponding to nearly 20,000 subscribers. Likewise, a great deal of time is required in order to manually issue individual software commands to the switch for the purpose of updating the backup system generic tape. Therefore, a method is needed for automatically comparing the subscriber database of a cellular switch's memory with the subscriber database of the backup system generic tape, and automatically updating the backup tape according to the differences found by the comparison.
Another method that is currently used to modify the subscriber database of the backup system generic tape to be compatible with the operative subscriber database of the cellular switch's memory relates to the "subscriber audit data program". This program is included in several models of cellular switch manufactured by Motorola, and generally functions to compare the operative subscriber database of the switch's primary random access memory with a second subscriber database located in a secondary, typically redundant random access memory location. The program provides an output of discrepancies between the two subscriber databases.
The subscriber audit data program is sometimes utilized to assist in modifying the subscriber database of the backup tape to be compatible with the operative subscriber database of the switch's memory. First, an operator manually removes the system generic tape from the magnetic tape drive to which the tape is attached, and manually substitutes the backup tape therefor. Then, the operator issues one or more software commands to the switch in order to cause the switch to load the subscriber database of the backup tape into the secondary random access memory location of the switch. Subsequently, the operator instructs the switch to perform the subscriber audit data program, which functions to compare the operative subscriber database originally stored in a primary, operative memory location with the subscriber database loaded into the secondary memory from the backup tape.
The subscriber audit data program can be directed to provide an output of data such as that shown in Table I, shown hereinbelow with row numbers added for ease of explanation. Specifically, Table I displays data that is divided into a number of entries, each entry being associated with a mobile telephone number for which the subscriber audit data program determined that data of the primary and secondary memories differ. In each entry, the mobile telephone number is shown in the first row the entry. For example, rows 1-4 correspond to the mobile telephone number 5123967719, which appears in the right hand portion of row 1; similarly, rows 5-8 correspond to the mobile telephone number 5124610013 which appears in the right hand portion of row 5.
In each entry, the data of the primary memory corresponding to the mobile telephone number of that entry is found in the row preceded by the heading "ACT". For the purpose of clarity, these entries will be referred to as the "active" entries. As an example, row 3 contains an active entry. Similarly, in each entry the data of the secondary memory corresponding to the mobile telephone number of that entry is found in the row preceded by the heading "SBY". For the purpose of clarity, these entries will be referred to as the "standby" entries. As an example, row 4 contains as standby entry.
TABLE I ______________________________________ Row 1 *MC-MSG=LOCAL MISMATCH, MID=5123967719 2 DX FP CP. OC ST SER . . . OV TC EAD 3 ACT 15 000 18 D 8202C855 00 00 4 SBY 15 000 00 D 8202C855 00 00 5 *MC-MSG=LOCAL MISMATCH, MID=5124610013 6 DX FP CP. OC ST SER . . . OV TC EAD 7 ACT 15 000 00 D A5077978 00 00 8 SBY NOT FOUND 9 *MC-MSG=LOCAL MlSMATCH, MID=5124610020 10 DX FP CP. OC ST SER . . . OV TC EAD 11 ACT 15 000 00 870AF0A5 00 00 12 SBY 15 000 00 86022BEE 00 00 13 *MC-MSG=LOCAL MISMATCH, MID=5124610067 14 DX FP CP. OC ST SER . . . OV TC EAD 15 ACT 16 000 00 D 81067E68 00 00 16 SBY 16 000 00 D 8603D3AO 00 00 17 *MC-MSG=LOCAL MISMATCH, MID=5124610101 18 DX FP CP. OC ST SER . . . OV TC EAD 19 ACT NOT FOUND 20 SBY 15 000 00 D AE020562 00 00 21 *MC-MSG=LOCAL MISMATCH, MID=5124610176 22 DX FP CP. OC ST SER . . . OV TC EAD 23 ACT 18 000 11 D 85000B9E 00 00 24 SBY 15 000 00 D 85000B9E 00 00 25 DX FP CP. OC ST SER . . . OV TC EAD 26 ACT 16 000 00 810784E6 00 00 27 SBY NOT FOUND 28 *MC-MSG=LOCAL MISMATCH, MID=5124618544 29 DX FP CP. OC ST SER . . . OV TC EAD 30 ACT NOT FOUND 31 SBY 18 000 11 D 9202B27C 00 00 32 *MC-MSG=LOCAL MISMATCH, MID=5124618555 33 DX FP CP. OC ST SER . . . OV TC EAD 34 ACT NOT FOUND 35 SBY 15 000 00 D A5075F98 00 00 ______________________________________
As discussed hereinabove, the subscriber audit data program is equipped to compare the subscriber database of the primary memory to the backup system generic tape if the subscriber database of the tape is loaded into the secondary memory. However, the subscriber audit data program is not capable of automatically updating the subscriber database of the tape, since the program is limited to performing a comparison.
However, the subscriber audit data program can be utilized in conjunction with a number of manual tasks in order to modify the subscriber database of the backup tape to be compatible with the operative subscriber database of the switch's memory.
First, an operator manually attaches the backup system generic tape to a magnetic disk drive of the switch. Then, the operator issues software commands to the switch in order to cause the switch to load the backup tape's subscriber database into the switch's secondary random access memory location. Finally, the operator issues one or more software commands to the switch in order to instruct the switch to perform the subscriber audit data program, which functions to compare the operative subscriber database originally stored in the primary memory location with the subscriber database loaded into the secondary memory location from the backup tape.
There are a number of limitations to the use of the subscriber audit data program for this purpose. First, although the program can be used to provide a list of discrepancies between the original, operative subscriber database of the cellular switch's memory and the subscriber database of the backup system generic tape, the program has no means to update the subscriber database of the backup system generic tape to reflect the contents of the original subscriber database stored in memory. Therefore, a method is still needed to automatically update the backup system generic tape of a cellular switch based on the comparison performed by the subscriber audit data program.
Another limitation is that the technique cannot compare data in other databases such as the denied service database, since the comparison performed by the subscriber audit data program is limited to the subscriber database. As a result, comparison of data such a the denied service database is still required to be performed manually. Therefore, an improved method is needed to compare the denied service database contained in a cellular switch's memory with the denied service database contained in the backup system generic tape, and update the backup tape in accordance with the comparison.
In addition to the loss or destruction of the system generic tape, data of a cellular switch is sometimes destroyed when the cellular switch's memory is shut down and re-started. Such a shut-down procedure sometimes occurs even during the normal course of operations of the cellular switch. For example, the switch's memory must be turned off in order to install a new version of operating system software in the switch.
Since the dynamic data of the subscriber database is generally not contained on the system generic tape due to the frequency of modification of the dynamic data, the dynamic data is lost in the event the random access memory is shut down. The active features database, which is comprised of dynamic data, is similarly lost as a result of a memory shut down.
Presently, the method for avoiding the loss of the active features database as a result of a memory shut-down requires a switch operator to print the active features database prior to the shut-down of the switch's memory. Then, in order to re-install the active features database in the memory after the memory is restarted, the operator manually transmits to the switch one or more commands for each cellular subscriber contained in the active features database.
There are a number of disadvantages associated with this process. In particular, manually issuing individual commands to the switch in order to update the active features of each cellular subscriber is often a time consuming process since a typical cellular switch may have 2,000 cellular subscribers that have selected user-enabled features at one time. Therefore, an improved method is needed for automatically saving the active features database of a cellular switch's memory prior to a memory shut-down, and automatically re-loading the active features database into memory after the memory is re-started.